COVID-19 Vaccinations in the United States: A Study
Project Description
Introduction
Results
This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For example, you can include Bold and Italic and Code text. For more details on using R Markdown see http://rmarkdown.rstudio.com.
You should test out updating your GitHub Pages website:
- clone your group’s blog project repo in RStudio
- update “Your Project Title Here” to a new title in the YAML header
- knit
index.Rmd - commit and push BOTH the
index.Rmdand theindex.htmlfiles - go to https://stat231-s21.github.io/Blog-library-cleanverse/ to see the published test document (this is publicly available!)
Including code and plots
You can embed code as normal, for example:
summary(cars)
## speed dist
## Min. : 4.0 Min. : 2.00
## 1st Qu.:12.0 1st Qu.: 26.00
## Median :15.0 Median : 36.00
## Mean :15.4 Mean : 42.98
## 3rd Qu.:19.0 3rd Qu.: 56.00
## Max. :25.0 Max. :120.00
Let’s clean up the format of that output:
In a study from the 1920s, fifty cars were used to see how the speed of the car and the distance taken to stop were related. Speeds ranged between 4 and 25 mph. Distances taken to stop ranged between 2 and 120 feet, with the middle 50% falling between 26 and 56 feet.
You can also embed plots as normal, for example:
Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.
Including links and images
You can include Links and images
You can embed a gif.
ma example
usa vaccine number
Comparison: CA and TN
# read in and plot ca vax over time
library(tidyverse)
library(dplyr)
library(readxl)
library(scales)
##
## Attaching package: 'scales'
## The following object is masked from 'package:viridis':
##
## viridis_pal
## The following object is masked from 'package:purrr':
##
## discard
## The following object is masked from 'package:readr':
##
## col_factor
library(viridis)
ca_time <- read_csv("ca_time.csv") %>%
filter(race != "Unknown", race != "Other/Multiracial")
##
## ── Column specification ────────────────────────────────────────────────────────
## cols(
## race = col_character(),
## date = col_date(format = ""),
## count = col_double(),
## frac = col_double()
## )
ca_tg <- ggplot(ca_time, aes(x = date, y = frac, colour = race)) +
geom_line() +
labs(colour = "Race", title = "Proportion of Racial Groups Vaccinated Over Time",
subtitle = "California, 2021") +
xlab("Date") + ylab("Proportion of Racial Group")
ca_tg
# read in and plot tn vax over time
tn_time <- read_csv("tn_time.csv") %>%
filter(race != "UNKNOWN", race != "OTHER/MULTIRACIAL")
##
## ── Column specification ────────────────────────────────────────────────────────
## cols(
## date = col_date(format = ""),
## race = col_character(),
## count = col_double(),
## frac = col_double()
## )
tn_tg <- ggplot(tn_time, aes(x = date, y = frac, colour = race)) +
geom_line() +
labs(colour = "Race", title = "Proportion of Racial Groups Vaccinated Over Time",
subtitle = "Tennessee, 2021") +
xlab("Date") + ylab("Proportion of Racial Group")
tn_tg
# read in and plot ca county vaccinations
ca_county <- read_csv("ca_county.csv") %>%
mutate(subregion = tolower(county)) %>%
select(-county)
##
## ── Column specification ────────────────────────────────────────────────────────
## cols(
## administered_date = col_date(format = ""),
## county = col_character(),
## total_vax = col_double()
## )
ca_counties <- map_data(map = "county", region = "california")
ca_map <- ca_counties %>%
left_join(ca_county, by = "subregion")
ggplot(ca_map, aes(x = long, y = lat, group = group, fill = total_vax)) +
geom_polygon(colour = "white") +
theme_void() +
coord_fixed(ratio = 1.3) +
facet_wrap(~administered_date) +
labs(fill = "Total Vaccinations") +
scale_fill_viridis(direction = -1) +
ggtitle("Vaccinations in California, Spring 2021")
# read in and plot tn county vaccinations
options(scipen = 999)
tn_county <- read_csv("tn_county.csv") %>%
mutate(subregion = tolower(COUNTY)) %>%
select(-COUNTY)
##
## ── Column specification ────────────────────────────────────────────────────────
## cols(
## date = col_date(format = ""),
## COUNTY = col_character(),
## total_vax = col_double()
## )
tn_counties <- map_data(map = "county", region = "tennessee")
tn_map <- tn_counties %>%
left_join(tn_county, by = "subregion") %>%
na.omit()
ggplot(tn_map, aes(x = long, y = lat, group = group, fill = total_vax)) +
geom_polygon(colour = "white") +
theme_void() +
coord_fixed(ratio = 1.3) +
facet_wrap(~date) +
labs(fill = "Total Vaccinations") +
scale_fill_viridis(direction = -1) +
ggtitle("Vaccinations in Tennessee, Spring 2021")
Comparison: CA and TN
An issue central to policy response to the COVID-19 pandemic is how to efficiently, equitably, and safely administered vaccinations among subpopulations of a given country’s citizens. Especially given the race-related events, movements, and justice and injustices in the past year, equitable vaccine distribution among racial groups is a very important, highly studied topic. Below, we will analyze vaccine administration by race in California and Tennessee, two historically partisan states, to see how well racially just policies and public health hopes are faring as they are put into practice. To calculate the proportion of racial groups, I scaled vaccine counts by racial subpopulations in California and Tennessee.
Unfortunately, the datasets available on California and Tennessee vaccinations had different racial categories and fineness thereof. Regardless, there are important conclusions to draw from the data. It is clear that in both California and Tennessee, Black Americans received COVID-19 vaccinations at the lowest rate. This trend began from the beginning of vaccine administration in both cases, demonstrating a clear racial inequity for this group.
Similarly, most other groups of people of color in California were vaccinated at rates below Caucasian Californians (except for Asian Californians and Native Hawaiian/Pacific Islander Californians). This suggests that Black and Brown communities encounter barriers to receiving vaccinations. Asian Californians appear to receive vaccines at similar rates to Caucasian Californians, which suggests a possibly less stark set of systemic barriers keeping Asian Californians from accessing the COVID-19 vaccine. Lastly, Native Hawaiian or Pacific Islander Californians appear to have consistently received the COVID-19 vaccine from the start. One theory for this occurrence is that Native Hawaiians whose tribal status is federally or regionally recognized may be able to receive the COVID-19 vaccine more easily via Indian Health Service vaccination clinics. However, this theory does not align with the low rates that non-Hawaiian Natives appear to be receiving vaccines.
In Tennessee, we also see a similar vaccination rate between Asian Tennesseeans and Caucasian Tennesseeans. This also suggests that Asian Tennesseeans encounter less stark systemic race-related barriers to COVID-19 vaccination. However, Black Tennesseeans appear to receive COVID-19 vaccinations at lower rates than their non-Black counterparts, which suggests that vaccine distribution between Black and non-Black communities in Tennessee is not equitable.
Lastly, it is important to note that in general, the overall vaccination rates in Tennessee are higher than in California. I theorize that this is because the Tennessee dataset did not specify whether vaccine counts meant fully vaccinated persons or vaccine doses administered, whereas the California dataset supplied counts of fully vaccinated persons. Since the overall purpose of this visualization was to compare rates between racial groups, and I believe that it is a fair assumption to say that racial groups and vaccine type (i.e. one-dose series or two-dose series) are not confounded, I hope that you all will find this visualization adequate.
The above graph shows the change in total vaccine doses in California between February 15 and April 15, 2021. I chose to analyze total doses instead of proportion of populations to demonstrate the incredibly high need for vaccine doses in highly populated areas, such as Los Angeles County (colored dark purple in the April 15 map). It appears that total doses administered falls highest in more populous counties, specifically those that encircle the Bay Area, Los Angeles, San Diego, Sacramento, and the Central Valley. If you look closely, you can see that some less populous counties saw a change in vaccine dosage between February 15 and April 15, but that that change is much smaller than the changes in populous areas. This can be explained by three main factors, the first (and most obvious) that vaccine counts should be lower where there are less people, the second that rural areas tend to be more conservative and conservative populations tend to have more anti-vaccine individuals in them, and the third (and most important) that public health infrastructure in rural areas tends to be less thorough, presenting many access issues for agricultural communities, Native communities, elderly people, and other populations that live in rural areas.
Lastly, the above graph shows the change in total vaccine doses in Tennessee between February 15 and April 15, 2021. It appears that total doses administered falls highest in more populous counties, specifically those that encircle Nashville, Memphis, Knoxville, and Chattanooga. Similar as to in California, it appears that less populous counties saw a small change in vaccine dosage between February 15 and April 15. This suggests that rural counties in Tennessee face challenges in administering vaccine doses to their populations that are similar to those in rural Californian counties.
>>>>>>> 602b41c7d59f5b3720d955636a1bf4977ae10846Bulleted list
You can make a bulleted list like this:
- item 1
- item 2
- item 3
Numbered list
You can make a numbered list like this
- First thing I want to say
- Second thing I want to say
- Third thing I want to say
Politics and Vaccinations
=======Politics and Vaccinations
>>>>>>> 602b41c7d59f5b3720d955636a1bf4977ae10846R Markdown
#read in
ratios.1 <- read_csv("finalratios.csv")
<<<<<<< HEAD
## Warning: Missing column names filled in: 'X1' [1]
##
## ── Column specification ────────────────────────────────────────────────────────
=======
## Warning: Missing column names filled in: 'X1' [1]
## Parsed with column specification:
>>>>>>> 602b41c7d59f5b3720d955636a1bf4977ae10846
## cols(
## X1 = col_double(),
## state = col_character(),
## dem_votes = col_double(),
## rep_votes = col_double(),
## delivered = col_double(),
## delivered_100 = col_double(),
## admin = col_double(),
## admin_100 = col_double(),
## percent_one_18 = col_double(),
## percent_full_18 = col_double()
## )
#quick updates to dataset
ratios.2 <- ratios.1 %>%
select(-c(X1)) %>%
mutate(politics = case_when(dem_votes > rep_votes ~ "1", dem_votes < rep_votes ~ "0")) %>%
mutate(ratio_overall = admin/delivered) %>%
mutate(ratio_100 = admin_100/delivered_100)
#data for maps
usa_states <- map_data(map = "state", region = ".")
ratio_map <- ratios.2 %>%
right_join(usa_states, by = c("state" = "region"))
map_dem <- ratio_map %>%
filter(politics != 0)
map_rep <- ratio_map %>%
filter(politics != 1)
Including Plots
You can also embed plots, for example:
## `geom_smooth()` using formula 'y ~ x'
## `geom_smooth()` using formula 'y ~ x'
<<<<<<< HEAD
Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.